package algorithme;
import java.util.ArrayList;

import programme.Solution;


public abstract class RecuitSimule<T> extends Algorithme<T> {

	/** Solution initiale avec laquelle est lancé le recuit*/
	protected Solution meilleurX;
	
	protected double meilleurResultat;
	
	/** Temperature du recuit */
	protected double temperature;
	
	/** Nombre de palier de temperature à faire dans le recuit */
	protected int nbPalier;
	
	/** Nombre d'iteration pour chaque palier de temperature */
	protected int nbIterInterne;
	
	/** */
	protected double mu;
	
	/** Algorithme glouton permettant de calculer une solution initiale */
	protected Glouton glouton;
	
	
	
	/**
	 * Fonction de décroissance de la température.
	 * @param t	température à faire décroitre.
	 * @return	la température diminuée
	 */
	protected double g(double t){
		return mu*t;
	}
	
	@Override
	public Solution lancer() {
		
		return null;
	}

}
